Sécurité dynamique
Le modèle de sécurité par défaut utilisé par EMu est de nature statique. Les privilèges des utilisateurs et des groupes sont définis dans le Registre et chargés dans un module lorsqu'il est appelé. Une fois appelée, la sécurité du module reste la même pendant toute sa durée de vie. Si un utilisateur peut modifier le contenu d'un champ donné, il peut alors le modifier pour tous les enregistrements (en supposant que Sécurité au Niveau de l'Enregistrement autorise la modification de l'enregistrement). Dans certains cas, il serait utile de permettre la modification de certains paramètres de sécurité en fonction des informations stockées dans l'enregistrement en cours.
Par exemple :
- Le personnel de rangement d'un groupe appelé Rangement peut modifier tous les champs des enregistrements de type Caisse et Cadre, tandis que pour les enregistrements de type Objet, il ne peut mettre à jour que les informations relatives aux dimensions.
Ce qui serait utile, c'est un mécanisme qui permettrait de modifier l'accès à une colonne en fonction du contenu de l'enregistrement.
- De même, vous pouvez exiger que certains champs soient remplis en fonction du type d'enregistrement. Pour les enregistrements Objet, vous pouvez exiger que le champ Titre principal soit spécifié, tandis que pour les enregistrements Caisse et Cadre, le titre ne soit pas être spécifié (en fait, il ne doit même pas être affiché). L'entrée de Registre Mandatory d’EMu permet de définir un champ comme étant obligatoire, mais il n'est pas possible d'utiliser cette entrée de Registre pour spécifier des paramètres obligatoires conditionnels.
Comme dans le premier exemple, il serait utile de permettre que le paramètre obligatoire d'un champ soit défini en fonction du contenu de l'enregistrement.
- Vous pouvez également modifier les paramètres de sécurité au niveau de l’enregistrement en fonction du contenu des données de l'enregistrement au moment de sa sauvegarde. L'une de ces exigences peut être que les enregistrements dont le statut est défini sur Retiré ne peuvent être modifiés que par les utilisateurs du groupe Administrateur. Une telle fonction peut être « câblée » dans le serveur de base de données.
Cependant, une solution qui utilise le Registre fournirait un mécanisme plus flexible.
Trois entrées de Registre implémentent un modèle de sécurité flexible et dynamique qui peut s'adapter en fonction des données stockées dans un enregistrement :
- L’entrée de Registre Column Access Modifier gère le premier exemple ci-dessus, c’est-à-dire la possibilité de modifier l'accès des colonnes en fonction du contenu de l’enregistrement.
- L'entrée de Registre Mandatory Modifier gère le deuxième exemple ci-dessus, c’est-à-dire la possibilité d'ajuster les paramètres obligatoires en fonction du contenu de l’enregistrement.
-
L'entrée de Registre Security|Update prévoit le troisième exemple, à savoir la possibilité de modifier le Niveau de sécurité des enregistrements en fonction du contenu de l'enregistrement en cours.
Note: Cliquez sur les liens ci-dessus pour obtenir tous les détails de chaque entrée.
La combinaison de ces fonctions fournit un mécanisme utile pour modifier dynamiquement les paramètres de sécurité d'EMu. L'utilisation de la sécurité dynamique permet d’appliquer des modèles de sécurité très souples.